#include "weather_an.h"
#include "main.h"

static lv_obj_t * weather_win = NULL;
static lv_obj_t * an_win = NULL;

// 天气界面返回事件函数
static void weather_return(lv_event_t * e);

// 公告界面返回事件函数
static void an_return(lv_event_t * e);

static lv_obj_t * main_win = NULL;

//天气
static void weather_btn_event_callback(lv_event_t * event)
{
    lv_event_code_t code = lv_event_get_code(event);
    if(code == LV_EVENT_CLICKED) {
#if HIDDEN_WIN
        // 给窗口2的容器添加隐藏属性，清除窗口1的隐藏属性
        lv_obj_add_flag(win2_contanier, LV_OBJ_FLAG_HIDDEN);
        lv_obj_clear_flag(win1_contanier, LV_OBJ_FLAG_HIDDEN);
#else
        // 删除主界面
        lv_obj_del(main_win);

        // 显示天气界面
        show_weather_win();
#endif
    }
}

//公告
static void an_btn_event_callback(lv_event_t * event)
{
    lv_event_code_t code = lv_event_get_code(event);
    if(code == LV_EVENT_CLICKED) {
#if HIDDEN_WIN
        // 给窗口2的容器添加隐藏属性，清除窗口1的隐藏属性
        lv_obj_add_flag(win2_contanier, LV_OBJ_FLAG_HIDDEN);
        lv_obj_clear_flag(win1_contanier, LV_OBJ_FLAG_HIDDEN);
#else
        // 删除主界面
        lv_obj_del(main_win);

        // 显示天气界面
        show_an_win();
#endif
    }
}



// 显示天气界面
void show_weather_win()
{
  // 创建一个对象
  weather_win = lv_obj_create(lv_scr_act()); // 创建一个独立的对象，大小与屏幕一致

  lv_obj_set_size(weather_win, 800, 480);

  // 天气界面中创建一个按钮
  lv_obj_t * label = lv_label_create(weather_win);

  // 设置标签的内容
  lv_obj_set_style_text_font(label, &chinese_ziku, 0);
  lv_label_set_text(label, "今日天气:小晴");

  // 放入中间
  lv_obj_center(label);

  // 创建一个返回按钮

  // 创建一个按钮对象
  lv_obj_t * btn = lv_btn_create(weather_win);
  // 设置按钮的大小
  lv_obj_set_size(btn, 100, 50);
  // 把按钮放入右下角
  lv_obj_align(btn, LV_ALIGN_BOTTOM_RIGHT, 0, 0);

  // 添加按钮的事件 ，当按钮 被点击后就会触发  event_cb 函数
  lv_obj_add_event_cb(btn, weather_return, LV_EVENT_CLICKED, NULL);

  // 创建一个标签对象  ，在按钮上
  lv_obj_t * label1 = lv_label_create(btn);
  // 设置标签的文字
  lv_obj_set_style_text_font(label1, &chinese_ziku, 0);
  lv_label_set_text(label1, "返回主界面");
  // 把标签放入按钮的中央
  lv_obj_center(label1);
}

// 显示公告界面
void show_an_win()
{
// 创建一个对象
an_win = lv_obj_create(lv_scr_act()); // 创建一个独立的对象，大小与屏幕一致

lv_obj_set_size(an_win, 800, 480);

// 在公告界面中创建一个人按钮
lv_obj_t * label = lv_label_create(an_win);

// 设置标签的内容
lv_obj_set_style_text_font(label, &chinese_ziku, 0);
lv_label_set_text(label, "车辆没有防震方案");

// 放入中间
lv_obj_center(label);

// 创建一个返回按钮

// 创建一个按钮对象
lv_obj_t * btn = lv_btn_create(an_win);
// 设置按钮的大小
lv_obj_set_size(btn, 100, 50);
// 把按钮放入右下角
lv_obj_align(btn, LV_ALIGN_BOTTOM_RIGHT, 0, 0);

// 添加按钮的事件 ，当按钮 被点击后就会触发  event_cb 函数
lv_obj_add_event_cb(btn, an_return, LV_EVENT_CLICKED, NULL);

// 创建一个标签对象  ，在按钮上
lv_obj_t * label1 = lv_label_create(btn);
// 设置标签的文字
lv_obj_set_style_text_font(label1, &chinese_ziku, 0);
lv_label_set_text(label1, "返回主界面");
// 把标签放入按钮的中央
lv_obj_center(label1);
}